#include<bits/stdc++.h> 
using namespace std;
//	给定两个字符串S1和S2，其中S=S1-S2指的是从S1中把S2的字符全部去掉。主要问题是如何做得快
//1.每个输入有一个测试用例，每个测试用例包含两行输入，每行都是一个字符串，分别是S1和S2。
//	字符串长度≤10000。字符为全部可见字符以及空格和换行符 
//2.对于每个测试用例，输出S1-S2的结果
//3.性能题 
//如果是通过查找对比删除的话肯定超时，所以可以根据题目给的（事实上只考虑大小写字母，数字这些就够了） 
bool chars[64];	//符号是否在S2里出现 
unordered_map<char, int> maps;	//符号和下标的对应 
void init(){
	fill(chars,chars+64,true);
	for(int i = 0;i<26;i++){
		maps[char('A'+i)] = i;
	}
	for(int i = 0;i<26;i++){
		maps[char('a'+i)] = i+26;
	}
	for(int i = 0;i<10;i++){
		maps[char('0'+i)] = i+52;
	}
	maps[' '] = 62;
	maps['\n'] = 63;
}
int main(){
	string S1, S2;
	getline(cin, S1);	//逐行读入 
	getline(cin, S2);
	init();
	for(int i=0;i<S2.length();i++){
		chars[maps[S2[i]]] = false;	//置false 
	}
	for(int i=0;i<S1.length();i++){
		if(chars[maps[S1[i]]]==true) cout<<S1[i];	//根据是否为true来判断输出情况 
	}
	cout<<endl;
	return 0;
} 